package com.ruoyi.finance.service;

import java.util.List;
import com.ruoyi.finance.domain.VoucherTemplate;
import com.ruoyi.finance.domain.VoucherTemplateType;
import com.ruoyi.finance.vo.TemPlateDTO;
import com.ruoyi.finance.vo.VoucherDetailVo;
import com.ruoyi.finance.vo.VoucherTemplateVO;

/**
 * 发票凭证模板Service接口
 *
 * @author ruoyi
 * @date 2025-03-03
 */
public interface IVoucherTemplateService
{
    /**
     * 查询发票凭证模板
     *
     * @param templateId 发票凭证模板主键
     * @return 发票凭证模板
     */


    /**
     * 查询发票凭证模板列表
     *
     * @param voucherTemplate 发票凭证模板
     * @return 发票凭证模板集合
     */
    public List<VoucherTemplate> selectVoucherTemplateList(VoucherTemplate voucherTemplate);

    /**
     * 新增发票凭证模板
     *
     * @param voucherTemplate 发票凭证模板
     * @return 结果
     */
    public int insertVoucherTemplate(VoucherTemplate voucherTemplate);

    /**
     * 修改发票凭证模板
     *
     * @param voucherTemplate 发票凭证模板
     * @return 结果
     */
    public int updateVoucherTemplate(VoucherTemplate voucherTemplate);

    /**
     * 批量删除发票凭证模板
     *
     * @param templateIds 需要删除的发票凭证模板主键集合
     * @return 结果
     */
    public int deleteVoucherTemplateByTemplateIds(Long[] templateIds);

    /**
     * 删除发票凭证模板信息
     *
     * @param templateId 发票凭证模板主键
     * @return 结果
     */
    public int deleteVoucherTemplateByTemplateId(Long templateId);


    List<VoucherTemplateVO> selectlist();

    int toadd(TemPlateDTO temPlateDTO);

    List<VoucherTemplateType> toselectTemplateType();

}
